package com.bestcem.xm.deliver.service;

import com.alibaba.fastjson.JSONObject;
import com.bestcem.xm.component.mybatis.service.IXmService;
import com.bestcem.xm.deliver.controller.v2.param.CreateWechatMpdeliversParam;
import com.bestcem.xm.deliver.entity.DeliverDeliver;
import com.bestcem.xm.deliver.entity.DeliverWechatmpDeliver;
import com.bestcem.xm.deliver.grpc.client.dto.WechatOfficialInfoDto;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author been
 * @description 针对表【ds_deliver_wechatmpdeliver】的数据库操作Service
 * @createDate 2022-11-07 13:49:47
 */
public interface DeliverWechatmpDeliverService extends IXmService<DeliverWechatmpDeliver> {
    List<WechatOfficialInfoDto> getWechatmp();

    JSONObject getWechatTemplates(String appId);

    JSONObject createWechatMpdelivers(CreateWechatMpdeliversParam param);

    JSONObject updateWechatmpdelivers(String id, JSONObject param, DeliverWechatmpDeliver wechatmpdeliver, DeliverDeliver deliver);

    JSONObject editWechatmpdelivers(String id, JSONObject param, DeliverWechatmpDeliver wechatmpdeliver, DeliverDeliver deliver);

    void export(JSONObject param, HttpServletResponse response, DeliverWechatmpDeliver mp_deliver, DeliverDeliver deliver);

    void triggerDeliverStatus(DeliverDeliver deliver, String action);
}
